package net.superdvach.network;

import java.util.*;

public class NodeManager {
	
	public NodeManager() {
		m_nodes = new ArrayList<Node>();
	}

	public void addNode(String id, NetworkAddress address) {
		m_nodes.add(new Node(id, address));
	}
	
	public void removeNode(String id) {
		for(int index = 0; index < m_nodes.size(); index++) {
			if(m_nodes.get(index).id() == id) {
				m_nodes.remove(index);
				return;
			}
		}
	}
	
	public Node node(String id) {
		for(Node node : m_nodes) {
			if(node.id() == id) {
				return node;
			}
		}
		return null;
	}
	
	public ArrayList<String> nodeList() {
		ArrayList<String> nodes = new ArrayList<String>();
		for(Node node : m_nodes) {
			nodes.add(node.id());
		}
		return nodes;
	}
	
	private ArrayList<Node> m_nodes;
}
